/*
 * @Description: 创建文件写入流，可控制写入过程
 * @Author: dh
 * @Date: 2021-09-02 16:51:50
 * @LastEditors: dh
 * @LastEditTime: 2023-10-24 15:22:36
 */

const fs = require('fs')
const path = require('path')

const ws1 = fs.createWriteStream(path.join(__dirname, './test.txt'), {
	flags: 'w', //如果要修改文件内容，而不是覆盖文件原有的所有内容，则设置flags为'r+'
	start: 24, //从文件内容的第24个字节开始修改
})

ws1.on('open', () => {
	console.log('文件已打开', ws1.pending)
})
ws1.on('ready', () => {
	console.log('数据已准备好读取', ws1.pending)
})
ws1.on('close', () => {
	console.log('数据已读完')
})

ws1.write('hello world')
ws1.write('使用Stream写入文本数据...\n')
ws1.write('END.')
ws1.write(new Buffer('\n使用Stream写入二进制数据...\n'), 'utf-8')
ws1.write(new Buffer('END.'), 'utf-8')
ws1.end()
